#include <stdio.h>
#include <iostream>
#include <stdint.h>
#include <sys/types.h>
#include <stdlib.h>
#include <memory.h>

using namespace std;


struct T{
    // char t0;
    // char t1; //4Byte
    char t2;    //1Byte
    int t3;    //8Byte
};

typedef struct T T1;

int main(int argc, char* argv[]){
    // cout << "hello world" << endl;
    int* p1;
    int len = sizeof(int*);
    int i = 0;
    printf("len = %d\n", len);
    p1 = (int*)calloc(16 ,sizeof(int));
    // memset(p1, 0 , sizeof(p1));

    int* p0 = p1;
    for (int i ; i < len && (p1++); i++)
    {
        *(p1) = i;
    printf("p1 = %d\n", *p1);
    }
    // p1 = p0;
    
    // *p1 = 1;



    // struct T T1 = {
        // .t1 = 'a',
        // .t2 = 'b',
        // .t3 = 10,
    // };
    ssize_t size = sizeof(T1);
    // printf("t1 >> %d\n", sizeof(T1.t1));
    // printf("t2 >> %d\n", sizeof(T1.t2));
    // printf("t3 >> %d\n", sizeof(T1.t3));
    printf("p1 addr = %p\n", p1);
    printf("p1 size = %d\n", *(p1));
    free(p0);
    return 0;
}

void print(int argv){
    cout<< "%d\n",argv ;
    return;
}